@farm.js/core 0.1.0-beta.22 → 0.1.0-beta.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-runtime.d.mts +2 -1
- package/dist/agent-runtime.d.ts +2 -1
- package/dist/{app-BB8GCH1g.d.ts → app-CTFnOJaI.d.ts} +5 -3
- package/dist/{app-DwsTpyNZ.d.mts → app-DA6ospIq.d.mts} +5 -3
- package/dist/app-markdown.d.mts +2 -1
- package/dist/app-markdown.d.ts +2 -1
- package/dist/chunk-4IVNW5QD.mjs +82 -0
- package/dist/chunk-4IVNW5QD.mjs.map +1 -0
- package/dist/{chunk-DAUR3WUZ.mjs → chunk-5NOVWCFL.mjs} +2 -2
- package/dist/chunk-5NOVWCFL.mjs.map +1 -0
- package/dist/chunk-D42BNPZH.mjs +79 -0
- package/dist/chunk-D42BNPZH.mjs.map +1 -0
- package/dist/{chunk-LLPN5SEZ.mjs → chunk-DVPRBMU2.mjs} +2 -2
- package/dist/{chunk-ZP73P4VR.mjs → chunk-FJGTYLCO.mjs} +67 -20
- package/dist/chunk-FJGTYLCO.mjs.map +1 -0
- package/dist/chunk-GQVQESLY.mjs +25 -0
- package/dist/chunk-GQVQESLY.mjs.map +1 -0
- package/dist/chunk-H53KVQUU.mjs +48 -0
- package/dist/chunk-H53KVQUU.mjs.map +1 -0
- package/dist/chunk-HCGQYYHI.mjs +1 -0
- package/dist/chunk-HCGQYYHI.mjs.map +1 -0
- package/dist/{chunk-UCYWGN2P.mjs → chunk-OHNSROHS.mjs} +1 -1
- package/dist/{chunk-FRPWCMMG.mjs → chunk-SBWOTAX4.mjs} +63 -2
- package/dist/chunk-SBWOTAX4.mjs.map +1 -0
- package/dist/{chunk-XBKXKJX5.mjs → chunk-TX54PXAJ.mjs} +81 -25
- package/dist/chunk-TX54PXAJ.mjs.map +1 -0
- package/dist/{chunk-CEVMYGDL.mjs → chunk-YD5IRKVS.mjs} +13 -9
- package/dist/chunk-YD5IRKVS.mjs.map +1 -0
- package/dist/{client-plugins-QQntVkrv.d.mts → client-plugins-CCilIb_G.d.mts} +6 -2
- package/dist/{client-plugins-CbRum1fj.d.ts → client-plugins-DuuleQKk.d.ts} +6 -2
- package/dist/client-plugins.d.mts +2 -1
- package/dist/client-plugins.d.ts +2 -1
- package/dist/client.cjs +122 -35
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.mts +2 -0
- package/dist/client.d.ts +2 -0
- package/dist/client.mjs +13 -2
- package/dist/config.d.mts +2 -1
- package/dist/config.d.ts +2 -1
- package/dist/{devtools-52FYXIEK.mjs → devtools-326RBQCN.mjs} +7 -6
- package/dist/{devtools-52FYXIEK.mjs.map → devtools-326RBQCN.mjs.map} +1 -1
- package/dist/docs.cjs.map +1 -1
- package/dist/docs.mjs +6 -5
- package/dist/index.cjs +431 -55
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +10 -7
- package/dist/index.d.ts +10 -7
- package/dist/index.mjs +66 -49
- package/dist/index.mjs.map +1 -1
- package/dist/integrations.d.mts +2 -1
- package/dist/integrations.d.ts +2 -1
- package/dist/internal/build-runtime.cjs +337 -34
- package/dist/internal/build-runtime.cjs.map +1 -1
- package/dist/internal/build-runtime.d.mts +4 -3
- package/dist/internal/build-runtime.d.ts +4 -3
- package/dist/internal/build-runtime.mjs +15 -12
- package/dist/internal/config-runtime.cjs +41 -0
- package/dist/internal/config-runtime.cjs.map +1 -1
- package/dist/internal/config-runtime.d.mts +3 -2
- package/dist/internal/config-runtime.d.ts +3 -2
- package/dist/internal/config-runtime.mjs +5 -4
- package/dist/internal/production-runtime.cjs +178 -0
- package/dist/internal/production-runtime.cjs.map +1 -1
- package/dist/internal/production-runtime.d.mts +20 -6
- package/dist/internal/production-runtime.d.ts +20 -6
- package/dist/internal/production-runtime.mjs +13 -1
- package/dist/internal/production-runtime.mjs.map +1 -1
- package/dist/{metadata-B5jBJHq1.d.ts → metadata-DyPRG0wX.d.ts} +1 -1
- package/dist/{metadata-BxOJ4FJl.d.mts → metadata-_GHcAySx.d.mts} +1 -1
- package/dist/middleware.d.mts +4 -3
- package/dist/middleware.d.ts +4 -3
- package/dist/plugin.cjs +219 -14
- package/dist/plugin.cjs.map +1 -1
- package/dist/plugin.d.mts +2 -1
- package/dist/plugin.d.ts +2 -1
- package/dist/plugin.mjs +11 -8
- package/dist/{production-runtime-Bxua86uR.d.mts → production-runtime-C4cO3esK.d.mts} +1 -1
- package/dist/{production-runtime-CZqXjRVi.d.ts → production-runtime-DrEy8kBO.d.ts} +1 -1
- package/dist/{request-7V0GaZK_.d.mts → request-B2PpOxYK.d.mts} +1 -1
- package/dist/{request-B5XYBv5a.d.ts → request-D40lt6aN.d.ts} +1 -1
- package/dist/request.d.mts +3 -2
- package/dist/request.d.ts +3 -2
- package/dist/routes.d.mts +2 -1
- package/dist/routes.d.ts +2 -1
- package/dist/server-plugins.d.mts +3 -2
- package/dist/server-plugins.d.ts +3 -2
- package/dist/server.cjs +241 -19
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.mts +8 -6
- package/dist/server.d.ts +8 -6
- package/dist/server.mjs +20 -11
- package/dist/server.mjs.map +1 -1
- package/dist/testing.d.mts +2 -1
- package/dist/testing.d.ts +2 -1
- package/dist/theme/client.cjs +115 -0
- package/dist/theme/client.cjs.map +1 -0
- package/dist/theme/client.d.mts +17 -0
- package/dist/theme/client.d.ts +17 -0
- package/dist/theme/client.mjs +16 -0
- package/dist/theme/client.mjs.map +1 -0
- package/dist/theme/index.cjs +71 -0
- package/dist/theme/index.cjs.map +1 -0
- package/dist/theme/index.d.mts +6 -0
- package/dist/theme/index.d.ts +6 -0
- package/dist/theme/index.mjs +9 -0
- package/dist/theme/index.mjs.map +1 -0
- package/dist/theme/server.cjs +191 -0
- package/dist/theme/server.cjs.map +1 -0
- package/dist/theme/server.d.mts +8 -0
- package/dist/theme/server.d.ts +8 -0
- package/dist/theme/server.mjs +18 -0
- package/dist/theme/server.mjs.map +1 -0
- package/dist/types-CsR8fpgF.d.mts +30 -0
- package/dist/types-CsR8fpgF.d.ts +30 -0
- package/dist/{utils-xTFxzu47.d.ts → utils-3sQgfkya.d.ts} +1 -1
- package/dist/{utils-s9pN0Yep.d.mts → utils-Bop7bly-.d.mts} +1 -1
- package/dist/version.cjs +1 -1
- package/dist/version.cjs.map +1 -1
- package/dist/version.mjs +1 -1
- package/dist/vite.cjs +242 -15
- package/dist/vite.cjs.map +1 -1
- package/dist/vite.d.mts +2 -1
- package/dist/vite.d.ts +2 -1
- package/dist/vite.mjs +11 -8
- package/package.json +25 -1
- package/dist/chunk-CEVMYGDL.mjs.map +0 -1
- package/dist/chunk-DAUR3WUZ.mjs.map +0 -1
- package/dist/chunk-FRPWCMMG.mjs.map +0 -1
- package/dist/chunk-XBKXKJX5.mjs.map +0 -1
- package/dist/chunk-ZP73P4VR.mjs.map +0 -1
- /package/dist/{chunk-LLPN5SEZ.mjs.map → chunk-DVPRBMU2.mjs.map} +0 -0
- /package/dist/{chunk-UCYWGN2P.mjs.map → chunk-OHNSROHS.mjs.map} +0 -0
package/dist/agent-runtime.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChildProcess } from 'node:child_process';
|
|
2
|
-
import { _ as BundleResultPayload, $ as FarmPlugin, a0 as FarmIntegration } from './client-plugins-
|
|
2
|
+
import { _ as BundleResultPayload, $ as FarmPlugin, a0 as FarmIntegration } from './client-plugins-CCilIb_G.mjs';
|
|
3
3
|
import './plugin-BJDf43dc.mjs';
|
|
4
4
|
import 'react';
|
|
5
5
|
import 'http';
|
|
@@ -21,6 +21,7 @@ import './server-fn-error-DDh14a0V.mjs';
|
|
|
21
21
|
import './image-config-Duob7wER.mjs';
|
|
22
22
|
import './types-BMxWr97v.mjs';
|
|
23
23
|
import './cache.mjs';
|
|
24
|
+
import './types-CsR8fpgF.mjs';
|
|
24
25
|
import './route-runtime-DoOHzCAD.mjs';
|
|
25
26
|
import './font.mjs';
|
|
26
27
|
|
package/dist/agent-runtime.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChildProcess } from 'node:child_process';
|
|
2
|
-
import { _ as BundleResultPayload, $ as FarmPlugin, a0 as FarmIntegration } from './client-plugins-
|
|
2
|
+
import { _ as BundleResultPayload, $ as FarmPlugin, a0 as FarmIntegration } from './client-plugins-DuuleQKk.js';
|
|
3
3
|
import './plugin-BJDf43dc.js';
|
|
4
4
|
import 'react';
|
|
5
5
|
import 'http';
|
|
@@ -21,6 +21,7 @@ import './server-fn-error-DDh14a0V.js';
|
|
|
21
21
|
import './image-config-Duob7wER.js';
|
|
22
22
|
import './types-BMxWr97v.js';
|
|
23
23
|
import './cache.js';
|
|
24
|
+
import './types-CsR8fpgF.js';
|
|
24
25
|
import './route-runtime-DoOHzCAD.js';
|
|
25
26
|
import './font.js';
|
|
26
27
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { F as FarmConfig, C as ParsedRoute, s as RouteModule, v as LayoutModule, I as SSGCollectionResult, x as FarmRequest, y as FarmResponse,
|
|
1
|
+
import { F as FarmConfig, C as ParsedRoute, s as RouteModule, v as LayoutModule, I as SSGCollectionResult, x as FarmRequest, y as FarmResponse, a4 as FarmMdxResolvedConfig, a5 as ResolvedFarmDevtoolsConfig, a6 as ResolvedFarmAuthConfig, a7 as ResolvedFarmPerformanceConfig, a8 as ResolvedFarmSecurityConfig } from './client-plugins-DuuleQKk.js';
|
|
2
2
|
import { F as FarmDocsResolvedConfig } from './types-DTzm4TCl.js';
|
|
3
3
|
import { FarmMarkdownResolvedConfig } from './markdown.js';
|
|
4
4
|
import { F as FarmWorkflowsResolvedConfig } from './workflows-CusFV6mn.js';
|
|
@@ -6,11 +6,12 @@ import { FarmCronResolvedConfig } from './cron.js';
|
|
|
6
6
|
import { R as ResolvedFarmImageConfig } from './image-config-Duob7wER.js';
|
|
7
7
|
import { ProgrammaticRedirectRoute, ProgrammaticRouteSearchClientOptions } from './routes.js';
|
|
8
8
|
import { ViteDevServer } from 'vite';
|
|
9
|
-
import { M as MetadataImageKind } from './metadata-
|
|
9
|
+
import { M as MetadataImageKind } from './metadata-DyPRG0wX.js';
|
|
10
10
|
import { F as FarmIslandStrategy } from './island-CfGru1MO.js';
|
|
11
11
|
import { R as ResolvedFarmRouteRuntimeConfig } from './route-runtime-DoOHzCAD.js';
|
|
12
12
|
import { R as ResolvedFarmI18nConfig } from './types-BMxWr97v.js';
|
|
13
13
|
import { F as FarmI18nRuntime } from './runtime-bv63eUiO.js';
|
|
14
|
+
import { R as ResolvedFarmThemeConfig } from './types-CsR8fpgF.js';
|
|
14
15
|
|
|
15
16
|
declare const STATIC_METADATA_IMAGE_EXTENSIONS: readonly ["png", "jpg", "jpeg", "gif", "webp"];
|
|
16
17
|
type StaticMetadataImageExtension = (typeof STATIC_METADATA_IMAGE_EXTENSIONS)[number];
|
|
@@ -273,7 +274,7 @@ declare class ServerRenderer {
|
|
|
273
274
|
private getDeploymentId;
|
|
274
275
|
}
|
|
275
276
|
|
|
276
|
-
type NormalizedFarmConfig = Omit<Required<FarmConfig>, "devtools" | "images" | "i18n" | "performance" | "security"> & {
|
|
277
|
+
type NormalizedFarmConfig = Omit<Required<FarmConfig>, "devtools" | "images" | "i18n" | "performance" | "security" | "theme"> & {
|
|
277
278
|
docs: FarmDocsResolvedConfig;
|
|
278
279
|
md: FarmMarkdownResolvedConfig;
|
|
279
280
|
mdx: FarmMdxResolvedConfig;
|
|
@@ -285,6 +286,7 @@ type NormalizedFarmConfig = Omit<Required<FarmConfig>, "devtools" | "images" | "
|
|
|
285
286
|
auth: ResolvedFarmAuthConfig;
|
|
286
287
|
performance: ResolvedFarmPerformanceConfig;
|
|
287
288
|
security: ResolvedFarmSecurityConfig;
|
|
289
|
+
theme: ResolvedFarmThemeConfig;
|
|
288
290
|
};
|
|
289
291
|
declare class FarmApp {
|
|
290
292
|
private config;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { F as FarmConfig, C as ParsedRoute, s as RouteModule, v as LayoutModule, I as SSGCollectionResult, x as FarmRequest, y as FarmResponse,
|
|
1
|
+
import { F as FarmConfig, C as ParsedRoute, s as RouteModule, v as LayoutModule, I as SSGCollectionResult, x as FarmRequest, y as FarmResponse, a4 as FarmMdxResolvedConfig, a5 as ResolvedFarmDevtoolsConfig, a6 as ResolvedFarmAuthConfig, a7 as ResolvedFarmPerformanceConfig, a8 as ResolvedFarmSecurityConfig } from './client-plugins-CCilIb_G.mjs';
|
|
2
2
|
import { F as FarmDocsResolvedConfig } from './types-DTzm4TCl.mjs';
|
|
3
3
|
import { FarmMarkdownResolvedConfig } from './markdown.mjs';
|
|
4
4
|
import { F as FarmWorkflowsResolvedConfig } from './workflows-CusFV6mn.mjs';
|
|
@@ -6,11 +6,12 @@ import { FarmCronResolvedConfig } from './cron.mjs';
|
|
|
6
6
|
import { R as ResolvedFarmImageConfig } from './image-config-Duob7wER.mjs';
|
|
7
7
|
import { ProgrammaticRedirectRoute, ProgrammaticRouteSearchClientOptions } from './routes.mjs';
|
|
8
8
|
import { ViteDevServer } from 'vite';
|
|
9
|
-
import { M as MetadataImageKind } from './metadata-
|
|
9
|
+
import { M as MetadataImageKind } from './metadata-_GHcAySx.mjs';
|
|
10
10
|
import { F as FarmIslandStrategy } from './island-CfGru1MO.mjs';
|
|
11
11
|
import { R as ResolvedFarmRouteRuntimeConfig } from './route-runtime-DoOHzCAD.mjs';
|
|
12
12
|
import { R as ResolvedFarmI18nConfig } from './types-BMxWr97v.mjs';
|
|
13
13
|
import { F as FarmI18nRuntime } from './runtime-Cxpq6xZN.mjs';
|
|
14
|
+
import { R as ResolvedFarmThemeConfig } from './types-CsR8fpgF.mjs';
|
|
14
15
|
|
|
15
16
|
declare const STATIC_METADATA_IMAGE_EXTENSIONS: readonly ["png", "jpg", "jpeg", "gif", "webp"];
|
|
16
17
|
type StaticMetadataImageExtension = (typeof STATIC_METADATA_IMAGE_EXTENSIONS)[number];
|
|
@@ -273,7 +274,7 @@ declare class ServerRenderer {
|
|
|
273
274
|
private getDeploymentId;
|
|
274
275
|
}
|
|
275
276
|
|
|
276
|
-
type NormalizedFarmConfig = Omit<Required<FarmConfig>, "devtools" | "images" | "i18n" | "performance" | "security"> & {
|
|
277
|
+
type NormalizedFarmConfig = Omit<Required<FarmConfig>, "devtools" | "images" | "i18n" | "performance" | "security" | "theme"> & {
|
|
277
278
|
docs: FarmDocsResolvedConfig;
|
|
278
279
|
md: FarmMarkdownResolvedConfig;
|
|
279
280
|
mdx: FarmMdxResolvedConfig;
|
|
@@ -285,6 +286,7 @@ type NormalizedFarmConfig = Omit<Required<FarmConfig>, "devtools" | "images" | "
|
|
|
285
286
|
auth: ResolvedFarmAuthConfig;
|
|
286
287
|
performance: ResolvedFarmPerformanceConfig;
|
|
287
288
|
security: ResolvedFarmSecurityConfig;
|
|
289
|
+
theme: ResolvedFarmThemeConfig;
|
|
288
290
|
};
|
|
289
291
|
declare class FarmApp {
|
|
290
292
|
private config;
|
package/dist/app-markdown.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import 'react';
|
|
2
|
-
export { df as FarmMarkdownPageModuleInput, de as FarmMarkdownPageSource, db as FarmMdxComponent, dc as FarmMdxComponents,
|
|
2
|
+
export { df as FarmMarkdownPageModuleInput, de as FarmMarkdownPageSource, db as FarmMdxComponent, dc as FarmMdxComponents, a4 as FarmMdxResolvedConfig, dd as FarmMdxUserConfig, dm as createFarmMarkdownRouteModule, dn as createFarmMarkdownRouteModuleFromFile, dq as createFarmMarkdownSourceResponse, dl as createMarkdownMetadata, dh as isFarmMarkdownPageFile, dp as loadFarmMdxComponents, di as normalizeFarmMarkdownRoutePath, dj as parseMarkdownFrontmatter, dg as resolveMdxConfig, dk as titleFromMarkdown } from './client-plugins-CCilIb_G.mjs';
|
|
3
3
|
import './plugin-BJDf43dc.mjs';
|
|
4
4
|
import 'http';
|
|
5
5
|
import './types-D1A6-XvH.mjs';
|
|
@@ -20,5 +20,6 @@ import './server-fn-error-DDh14a0V.mjs';
|
|
|
20
20
|
import './image-config-Duob7wER.mjs';
|
|
21
21
|
import './types-BMxWr97v.mjs';
|
|
22
22
|
import './cache.mjs';
|
|
23
|
+
import './types-CsR8fpgF.mjs';
|
|
23
24
|
import './route-runtime-DoOHzCAD.mjs';
|
|
24
25
|
import './font.mjs';
|
package/dist/app-markdown.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import 'react';
|
|
2
|
-
export { df as FarmMarkdownPageModuleInput, de as FarmMarkdownPageSource, db as FarmMdxComponent, dc as FarmMdxComponents,
|
|
2
|
+
export { df as FarmMarkdownPageModuleInput, de as FarmMarkdownPageSource, db as FarmMdxComponent, dc as FarmMdxComponents, a4 as FarmMdxResolvedConfig, dd as FarmMdxUserConfig, dm as createFarmMarkdownRouteModule, dn as createFarmMarkdownRouteModuleFromFile, dq as createFarmMarkdownSourceResponse, dl as createMarkdownMetadata, dh as isFarmMarkdownPageFile, dp as loadFarmMdxComponents, di as normalizeFarmMarkdownRoutePath, dj as parseMarkdownFrontmatter, dg as resolveMdxConfig, dk as titleFromMarkdown } from './client-plugins-DuuleQKk.js';
|
|
3
3
|
import './plugin-BJDf43dc.js';
|
|
4
4
|
import 'http';
|
|
5
5
|
import './types-D1A6-XvH.js';
|
|
@@ -20,5 +20,6 @@ import './server-fn-error-DDh14a0V.js';
|
|
|
20
20
|
import './image-config-Duob7wER.js';
|
|
21
21
|
import './types-BMxWr97v.js';
|
|
22
22
|
import './cache.js';
|
|
23
|
+
import './types-CsR8fpgF.js';
|
|
23
24
|
import './route-runtime-DoOHzCAD.js';
|
|
24
25
|
import './font.js';
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import {
|
|
2
|
+
resolveFarmThemeConfig
|
|
3
|
+
} from "./chunk-H53KVQUU.mjs";
|
|
4
|
+
import {
|
|
5
|
+
getCurrentRequest
|
|
6
|
+
} from "./chunk-RHIFZZUI.mjs";
|
|
7
|
+
import {
|
|
8
|
+
_setFarmThemeServerSnapshotResolver
|
|
9
|
+
} from "./chunk-GQVQESLY.mjs";
|
|
10
|
+
import {
|
|
11
|
+
__name
|
|
12
|
+
} from "./chunk-CGILA3WO.mjs";
|
|
13
|
+
|
|
14
|
+
// src/theme/server.ts
|
|
15
|
+
var defaultThemeConfig = resolveFarmThemeConfig(void 0);
|
|
16
|
+
function _setDefaultFarmThemeConfig(config, basePath = "/") {
|
|
17
|
+
defaultThemeConfig = resolveFarmThemeConfig(config, basePath);
|
|
18
|
+
}
|
|
19
|
+
__name(_setDefaultFarmThemeConfig, "_setDefaultFarmThemeConfig");
|
|
20
|
+
function getTheme(request = getCurrentRequest()) {
|
|
21
|
+
return readFarmThemePreference(request, defaultThemeConfig);
|
|
22
|
+
}
|
|
23
|
+
__name(getTheme, "getTheme");
|
|
24
|
+
function getThemeSnapshot(request = getCurrentRequest()) {
|
|
25
|
+
const theme = readFarmThemePreference(request, defaultThemeConfig);
|
|
26
|
+
return {
|
|
27
|
+
theme,
|
|
28
|
+
resolvedTheme: theme === "system" ? void 0 : theme,
|
|
29
|
+
mounted: false
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
__name(getThemeSnapshot, "getThemeSnapshot");
|
|
33
|
+
function readFarmThemePreference(request, config) {
|
|
34
|
+
if (!config.enabled) return config.default;
|
|
35
|
+
const stored = readCookie(request.headers.get("cookie"), config.storageKey);
|
|
36
|
+
return isFarmThemePreference(stored) ? stored : config.default;
|
|
37
|
+
}
|
|
38
|
+
__name(readFarmThemePreference, "readFarmThemePreference");
|
|
39
|
+
function readCookie(cookieHeader, name) {
|
|
40
|
+
if (!cookieHeader) return void 0;
|
|
41
|
+
for (const entry of cookieHeader.split(";")) {
|
|
42
|
+
const separator = entry.indexOf("=");
|
|
43
|
+
if (separator < 0) continue;
|
|
44
|
+
const key = decodeCookieValue(entry.slice(0, separator).trim());
|
|
45
|
+
if (key !== name) continue;
|
|
46
|
+
return decodeCookieValue(entry.slice(separator + 1).trim());
|
|
47
|
+
}
|
|
48
|
+
return void 0;
|
|
49
|
+
}
|
|
50
|
+
__name(readCookie, "readCookie");
|
|
51
|
+
function decodeCookieValue(value) {
|
|
52
|
+
try {
|
|
53
|
+
return decodeURIComponent(value);
|
|
54
|
+
} catch {
|
|
55
|
+
return value;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
__name(decodeCookieValue, "decodeCookieValue");
|
|
59
|
+
function isFarmThemePreference(value) {
|
|
60
|
+
return value === "light" || value === "dark" || value === "system";
|
|
61
|
+
}
|
|
62
|
+
__name(isFarmThemePreference, "isFarmThemePreference");
|
|
63
|
+
_setFarmThemeServerSnapshotResolver(() => {
|
|
64
|
+
try {
|
|
65
|
+
return getThemeSnapshot();
|
|
66
|
+
} catch {
|
|
67
|
+
const theme = defaultThemeConfig.default;
|
|
68
|
+
return {
|
|
69
|
+
theme,
|
|
70
|
+
resolvedTheme: theme === "system" ? void 0 : theme,
|
|
71
|
+
mounted: false
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
export {
|
|
77
|
+
_setDefaultFarmThemeConfig,
|
|
78
|
+
getTheme,
|
|
79
|
+
getThemeSnapshot,
|
|
80
|
+
readFarmThemePreference
|
|
81
|
+
};
|
|
82
|
+
//# sourceMappingURL=chunk-4IVNW5QD.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/theme/server.ts"],"sourcesContent":["import { getCurrentRequest } from \"../server/request\";\nimport { _setFarmThemeServerSnapshotResolver } from \"./bridge\";\nimport { resolveFarmThemeConfig } from \"./config\";\nimport type {\n FarmThemeConfig,\n FarmThemePreference,\n FarmThemeSnapshot,\n ResolvedFarmThemeConfig,\n} from \"./types\";\n\nlet defaultThemeConfig = resolveFarmThemeConfig(undefined);\n\nexport function _setDefaultFarmThemeConfig(\n config: FarmThemeConfig | ResolvedFarmThemeConfig | false | undefined,\n basePath = \"/\",\n): void {\n defaultThemeConfig = resolveFarmThemeConfig(config, basePath);\n}\n\nexport function getTheme(request: Request = getCurrentRequest()): FarmThemePreference {\n return readFarmThemePreference(request, defaultThemeConfig);\n}\n\nexport function getThemeSnapshot(request: Request = getCurrentRequest()): FarmThemeSnapshot {\n const theme = readFarmThemePreference(request, defaultThemeConfig);\n return {\n theme,\n resolvedTheme: theme === \"system\" ? undefined : theme,\n mounted: false,\n };\n}\n\nexport function readFarmThemePreference(\n request: Request,\n config: ResolvedFarmThemeConfig,\n): FarmThemePreference {\n if (!config.enabled) return config.default;\n const stored = readCookie(request.headers.get(\"cookie\"), config.storageKey);\n return isFarmThemePreference(stored) ? stored : config.default;\n}\n\nfunction readCookie(cookieHeader: string | null, name: string): string | undefined {\n if (!cookieHeader) return undefined;\n for (const entry of cookieHeader.split(\";\")) {\n const separator = entry.indexOf(\"=\");\n if (separator < 0) continue;\n const key = decodeCookieValue(entry.slice(0, separator).trim());\n if (key !== name) continue;\n return decodeCookieValue(entry.slice(separator + 1).trim());\n }\n return undefined;\n}\n\nfunction decodeCookieValue(value: string): string {\n try {\n return decodeURIComponent(value);\n } catch {\n return value;\n }\n}\n\nfunction isFarmThemePreference(value: unknown): value is FarmThemePreference {\n return value === \"light\" || value === \"dark\" || value === \"system\";\n}\n\n_setFarmThemeServerSnapshotResolver(() => {\n try {\n return getThemeSnapshot();\n } catch {\n const theme = defaultThemeConfig.default;\n return {\n theme,\n resolvedTheme: theme === \"system\" ? undefined : theme,\n mounted: false,\n };\n }\n});\n"],"mappings":";;;;;;;;;;;;;;AAUA,IAAI,qBAAqB,uBAAuB,MAAS;AAElD,SAAS,2BACd,QACA,WAAW,KACL;AACN,uBAAqB,uBAAuB,QAAQ,QAAQ;AAC9D;AALgB;AAOT,SAAS,SAAS,UAAmB,kBAAkB,GAAwB;AACpF,SAAO,wBAAwB,SAAS,kBAAkB;AAC5D;AAFgB;AAIT,SAAS,iBAAiB,UAAmB,kBAAkB,GAAsB;AAC1F,QAAM,QAAQ,wBAAwB,SAAS,kBAAkB;AACjE,SAAO;AAAA,IACL;AAAA,IACA,eAAe,UAAU,WAAW,SAAY;AAAA,IAChD,SAAS;AAAA,EACX;AACF;AAPgB;AAST,SAAS,wBACd,SACA,QACqB;AACrB,MAAI,CAAC,OAAO,QAAS,QAAO,OAAO;AACnC,QAAM,SAAS,WAAW,QAAQ,QAAQ,IAAI,QAAQ,GAAG,OAAO,UAAU;AAC1E,SAAO,sBAAsB,MAAM,IAAI,SAAS,OAAO;AACzD;AAPgB;AAShB,SAAS,WAAW,cAA6B,MAAkC;AACjF,MAAI,CAAC,aAAc,QAAO;AAC1B,aAAW,SAAS,aAAa,MAAM,GAAG,GAAG;AAC3C,UAAM,YAAY,MAAM,QAAQ,GAAG;AACnC,QAAI,YAAY,EAAG;AACnB,UAAM,MAAM,kBAAkB,MAAM,MAAM,GAAG,SAAS,EAAE,KAAK,CAAC;AAC9D,QAAI,QAAQ,KAAM;AAClB,WAAO,kBAAkB,MAAM,MAAM,YAAY,CAAC,EAAE,KAAK,CAAC;AAAA,EAC5D;AACA,SAAO;AACT;AAVS;AAYT,SAAS,kBAAkB,OAAuB;AAChD,MAAI;AACF,WAAO,mBAAmB,KAAK;AAAA,EACjC,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AANS;AAQT,SAAS,sBAAsB,OAA8C;AAC3E,SAAO,UAAU,WAAW,UAAU,UAAU,UAAU;AAC5D;AAFS;AAIT,oCAAoC,MAAM;AACxC,MAAI;AACF,WAAO,iBAAiB;AAAA,EAC1B,QAAQ;AACN,UAAM,QAAQ,mBAAmB;AACjC,WAAO;AAAA,MACL;AAAA,MACA,eAAe,UAAU,WAAW,SAAY;AAAA,MAChD,SAAS;AAAA,IACX;AAAA,EACF;AACF,CAAC;","names":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// package.json
|
|
2
|
-
var version = "0.1.0-beta.
|
|
2
|
+
var version = "0.1.0-beta.23";
|
|
3
3
|
|
|
4
4
|
// src/version.ts
|
|
5
5
|
var FARM_VERSION = version;
|
|
@@ -7,4 +7,4 @@ var FARM_VERSION = version;
|
|
|
7
7
|
export {
|
|
8
8
|
FARM_VERSION
|
|
9
9
|
};
|
|
10
|
-
//# sourceMappingURL=chunk-
|
|
10
|
+
//# sourceMappingURL=chunk-5NOVWCFL.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../package.json","../src/version.ts"],"sourcesContent":["{\n \"name\": \"@farm.js/core\",\n \"version\": \"0.1.0-beta.23\",\n \"description\": \"Core Farm.js framework for modern integrated apps\",\n \"keywords\": [\n \"@farm.js/core\",\n \"framework\",\n \"react\",\n \"rsc\",\n \"server-components\",\n \"ssr\",\n \"vite\"\n ],\n \"license\": \"MIT\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/farming-labs/farm.js\",\n \"directory\": \"packages/farm\"\n },\n \"files\": [\n \"dist\",\n \"types\"\n ],\n \"main\": \"./dist/index.cjs\",\n \"module\": \"./dist/index.mjs\",\n \"types\": \"./dist/index.d.ts\",\n \"typesVersions\": {\n \"*\": {\n \"middleware\": [\n \"./types/middleware.d.ts\",\n \"./dist/middleware.d.ts\"\n ],\n \"version\": [\n \"./dist/version.d.ts\"\n ],\n \"router\": [\n \"./dist/router.d.ts\"\n ],\n \"routes\": [\n \"./dist/routes.d.ts\"\n ],\n \"storage\": [\n \"./dist/storage.d.ts\"\n ],\n \"integrations\": [\n \"./dist/integrations.d.ts\"\n ],\n \"cache\": [\n \"./dist/cache.d.ts\"\n ],\n \"deferred\": [\n \"./dist/deferred.d.ts\"\n ],\n \"after\": [\n \"./dist/after.d.ts\"\n ],\n \"navigation\": [\n \"./dist/navigation.d.ts\"\n ],\n \"headers\": [\n \"./dist/headers.d.ts\"\n ],\n \"theme\": [\n \"./dist/theme/index.d.ts\"\n ],\n \"theme/client\": [\n \"./dist/theme/client.d.ts\"\n ],\n \"theme/server\": [\n \"./dist/theme/server.d.ts\"\n ],\n \"docs\": [\n \"./dist/docs.d.ts\"\n ],\n \"markdown\": [\n \"./dist/markdown.d.ts\"\n ],\n \"app-markdown\": [\n \"./dist/app-markdown.d.ts\"\n ],\n \"observability\": [\n \"./dist/observability.d.ts\"\n ],\n \"workflows\": [\n \"./dist/workflows.d.ts\"\n ],\n \"cron\": [\n \"./dist/cron.d.ts\"\n ],\n \"server-fn\": [\n \"./dist/server-fn.d.ts\"\n ],\n \"server-fn/client\": [\n \"./dist/server-fn-client.d.ts\"\n ],\n \"server-action-security\": [\n \"./dist/server-action-security.d.ts\"\n ],\n \"deployment\": [\n \"./dist/deployment.d.ts\"\n ],\n \"env\": [\n \"./dist/env.d.ts\"\n ],\n \"env-types\": [\n \"./dist/env-types.d.ts\"\n ],\n \"environment\": [\n \"./dist/environment.d.ts\"\n ],\n \"environment/vite\": [\n \"./dist/environment/vite.d.ts\"\n ],\n \"font\": [\n \"./dist/font.d.ts\"\n ],\n \"testing\": [\n \"./dist/testing.d.ts\"\n ],\n \"agent-runtime\": [\n \"./dist/agent-runtime.d.ts\"\n ],\n \"image\": [\n \"./types/image.d.ts\",\n \"./dist/image.d.ts\"\n ],\n \"image/server\": [\n \"./dist/image/server.d.ts\"\n ],\n \"image/sharp\": [\n \"./dist/image/sharp.d.ts\"\n ],\n \"i18n\": [\n \"./dist/i18n/index.d.ts\"\n ],\n \"i18n/server\": [\n \"./dist/i18n/server.d.ts\"\n ],\n \"i18n/client\": [\n \"./dist/i18n/client.d.ts\"\n ],\n \"internal/production-runtime\": [\n \"./dist/internal/production-runtime.d.ts\"\n ],\n \"internal/metadata-image-runtime\": [\n \"./dist/internal/metadata-image-runtime.d.ts\"\n ],\n \"internal/client-runtime\": [\n \"./dist/internal/client-runtime.d.ts\"\n ],\n \"internal/build-runtime\": [\n \"./dist/internal/build-runtime.d.ts\"\n ],\n \"internal/config-runtime\": [\n \"./dist/internal/config-runtime.d.ts\"\n ],\n \"internal/production-node-env\": [\n \"./dist/internal/production-node-env.d.ts\"\n ],\n \"config\": [\n \"./dist/config.d.ts\"\n ],\n \"api\": [\n \"./types/api.d.ts\",\n \"./dist/api.d.ts\"\n ],\n \"api/route-manager\": [\n \"./dist/api/route-manager.d.ts\"\n ],\n \"api/runtime\": [\n \"./dist/api/runtime.d.ts\"\n ],\n \"request\": [\n \"./dist/request.d.ts\"\n ],\n \"client\": [\n \"./types/client.d.ts\",\n \"./dist/client.d.ts\"\n ],\n \"server\": [\n \"./dist/server.d.ts\"\n ],\n \"vite\": [\n \"./dist/vite.d.ts\"\n ],\n \"plugin\": [\n \"./dist/plugin.d.ts\"\n ],\n \"query\": [\n \"./dist/query/index.d.ts\"\n ],\n \"*\": [\n \"./dist/*.d.ts\"\n ]\n }\n },\n \"exports\": {\n \".\": {\n \"types\": \"./dist/index.d.ts\",\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.cjs\",\n \"default\": \"./dist/index.mjs\"\n },\n \"./version\": {\n \"types\": \"./dist/version.d.ts\",\n \"import\": \"./dist/version.mjs\",\n \"require\": \"./dist/version.cjs\"\n },\n \"./config\": {\n \"types\": \"./dist/config.d.ts\",\n \"import\": \"./dist/config.mjs\",\n \"require\": \"./dist/config.cjs\"\n },\n \"./server\": {\n \"types\": \"./dist/server.d.ts\",\n \"import\": \"./dist/server.mjs\",\n \"require\": \"./dist/server.cjs\"\n },\n \"./client\": {\n \"types\": \"./types/client.d.ts\",\n \"import\": \"./dist/client.mjs\",\n \"require\": \"./dist/client.cjs\"\n },\n \"./storage\": {\n \"types\": \"./dist/storage.d.ts\",\n \"import\": \"./dist/storage.mjs\",\n \"require\": \"./dist/storage.cjs\"\n },\n \"./integrations\": {\n \"types\": \"./dist/integrations.d.ts\",\n \"import\": \"./dist/integrations.mjs\",\n \"require\": \"./dist/integrations.cjs\"\n },\n \"./cache\": {\n \"types\": \"./dist/cache.d.ts\",\n \"import\": \"./dist/cache.mjs\",\n \"require\": \"./dist/cache.cjs\"\n },\n \"./deferred\": {\n \"types\": \"./dist/deferred.d.ts\",\n \"import\": \"./dist/deferred.mjs\",\n \"require\": \"./dist/deferred.cjs\"\n },\n \"./after\": {\n \"types\": \"./dist/after.d.ts\",\n \"import\": \"./dist/after.mjs\",\n \"require\": \"./dist/after.cjs\"\n },\n \"./navigation\": {\n \"types\": \"./dist/navigation.d.ts\",\n \"import\": \"./dist/navigation.mjs\",\n \"require\": \"./dist/navigation.cjs\"\n },\n \"./headers\": {\n \"types\": \"./dist/headers.d.ts\",\n \"import\": \"./dist/headers.mjs\",\n \"require\": \"./dist/headers.cjs\"\n },\n \"./theme\": {\n \"types\": \"./dist/theme/index.d.ts\",\n \"import\": \"./dist/theme/index.mjs\",\n \"require\": \"./dist/theme/index.cjs\"\n },\n \"./theme/client\": {\n \"types\": \"./dist/theme/client.d.ts\",\n \"import\": \"./dist/theme/client.mjs\",\n \"require\": \"./dist/theme/client.cjs\"\n },\n \"./theme/server\": {\n \"types\": \"./dist/theme/server.d.ts\",\n \"import\": \"./dist/theme/server.mjs\",\n \"require\": \"./dist/theme/server.cjs\"\n },\n \"./docs\": {\n \"types\": \"./dist/docs.d.ts\",\n \"import\": \"./dist/docs.mjs\",\n \"require\": \"./dist/docs.cjs\"\n },\n \"./markdown\": {\n \"types\": \"./dist/markdown.d.ts\",\n \"import\": \"./dist/markdown.mjs\",\n \"require\": \"./dist/markdown.cjs\"\n },\n \"./app-markdown\": {\n \"types\": \"./dist/app-markdown.d.ts\",\n \"import\": \"./dist/app-markdown.mjs\",\n \"require\": \"./dist/app-markdown.cjs\"\n },\n \"./observability\": {\n \"types\": \"./dist/observability.d.ts\",\n \"import\": \"./dist/observability.mjs\",\n \"require\": \"./dist/observability.cjs\"\n },\n \"./workflows\": {\n \"types\": \"./dist/workflows.d.ts\",\n \"import\": \"./dist/workflows.mjs\",\n \"require\": \"./dist/workflows.cjs\"\n },\n \"./cron\": {\n \"types\": \"./dist/cron.d.ts\",\n \"import\": \"./dist/cron.mjs\",\n \"require\": \"./dist/cron.cjs\"\n },\n \"./server-fn\": {\n \"types\": \"./dist/server-fn.d.ts\",\n \"import\": \"./dist/server-fn.mjs\",\n \"require\": \"./dist/server-fn.cjs\"\n },\n \"./server-fn/client\": {\n \"types\": \"./dist/server-fn-client.d.ts\",\n \"import\": \"./dist/server-fn-client.mjs\",\n \"require\": \"./dist/server-fn-client.cjs\"\n },\n \"./server-query\": {\n \"types\": \"./dist/server-query.d.ts\",\n \"import\": \"./dist/server-query.mjs\",\n \"require\": \"./dist/server-query.cjs\"\n },\n \"./server-query/client\": {\n \"types\": \"./dist/server-query-client.d.ts\",\n \"import\": \"./dist/server-query-client.mjs\",\n \"require\": \"./dist/server-query-client.cjs\"\n },\n \"./server-action-security\": {\n \"types\": \"./dist/server-action-security.d.ts\",\n \"import\": \"./dist/server-action-security.mjs\",\n \"require\": \"./dist/server-action-security.cjs\"\n },\n \"./deployment\": {\n \"types\": \"./dist/deployment.d.ts\",\n \"import\": \"./dist/deployment.mjs\",\n \"require\": \"./dist/deployment.cjs\"\n },\n \"./env\": {\n \"types\": \"./dist/env.d.ts\",\n \"import\": \"./dist/env.mjs\",\n \"require\": \"./dist/env.cjs\"\n },\n \"./env-types\": {\n \"types\": \"./dist/env-types.d.ts\",\n \"import\": \"./dist/env-types.mjs\",\n \"require\": \"./dist/env-types.cjs\"\n },\n \"./environment\": {\n \"types\": \"./dist/environment.d.ts\",\n \"import\": \"./dist/environment.mjs\",\n \"require\": \"./dist/environment.cjs\"\n },\n \"./environment/vite\": {\n \"types\": \"./dist/environment/vite.d.ts\",\n \"import\": \"./dist/environment/vite.mjs\",\n \"require\": \"./dist/environment/vite.cjs\"\n },\n \"./font\": {\n \"types\": \"./dist/font.d.ts\",\n \"import\": \"./dist/font.mjs\",\n \"require\": \"./dist/font.cjs\"\n },\n \"./vite\": {\n \"types\": \"./dist/vite.d.ts\",\n \"import\": \"./dist/vite.mjs\",\n \"require\": \"./dist/vite.cjs\"\n },\n \"./plugin\": {\n \"types\": \"./dist/plugin.d.ts\",\n \"import\": \"./dist/plugin.mjs\",\n \"require\": \"./dist/plugin.cjs\"\n },\n \"./plugin/server\": {\n \"types\": \"./dist/server-plugins.d.ts\",\n \"import\": \"./dist/server-plugins.mjs\",\n \"require\": \"./dist/server-plugins.cjs\"\n },\n \"./plugin/client\": {\n \"types\": \"./dist/client-plugins.d.ts\",\n \"import\": \"./dist/client-plugins.mjs\",\n \"require\": \"./dist/client-plugins.cjs\"\n },\n \"./query\": {\n \"types\": \"./dist/query/index.d.ts\",\n \"import\": \"./dist/query/index.mjs\",\n \"require\": \"./dist/query/index.cjs\"\n },\n \"./query/parsers\": {\n \"types\": \"./dist/query/parsers.d.ts\",\n \"import\": \"./dist/query/parsers.mjs\",\n \"require\": \"./dist/query/parsers.cjs\"\n },\n \"./query/client\": {\n \"types\": \"./dist/query/client.d.ts\",\n \"import\": \"./dist/query/client.mjs\",\n \"require\": \"./dist/query/client.cjs\"\n },\n \"./query/server\": {\n \"types\": \"./dist/query/server.d.ts\",\n \"import\": \"./dist/query/server.mjs\",\n \"require\": \"./dist/query/server.cjs\"\n },\n \"./middleware\": {\n \"types\": \"./dist/middleware.d.ts\",\n \"import\": \"./dist/middleware.mjs\",\n \"require\": \"./dist/middleware.cjs\"\n },\n \"./api\": {\n \"types\": \"./dist/api.d.ts\",\n \"import\": \"./dist/api.mjs\",\n \"require\": \"./dist/api.cjs\"\n },\n \"./api/route-manager\": {\n \"types\": \"./dist/api/route-manager.d.ts\",\n \"import\": \"./dist/api/route-manager.mjs\",\n \"require\": \"./dist/api/route-manager.cjs\"\n },\n \"./api/runtime\": {\n \"types\": \"./dist/api/runtime.d.ts\",\n \"import\": \"./dist/api/runtime.mjs\",\n \"require\": \"./dist/api/runtime.cjs\"\n },\n \"./request\": {\n \"types\": \"./dist/request.d.ts\",\n \"import\": \"./dist/request.mjs\",\n \"require\": \"./dist/request.cjs\"\n },\n \"./router\": {\n \"types\": \"./dist/router.d.ts\",\n \"import\": \"./dist/router.mjs\",\n \"require\": \"./dist/router.cjs\"\n },\n \"./routes\": {\n \"types\": \"./dist/routes.d.ts\",\n \"import\": \"./dist/routes.mjs\",\n \"require\": \"./dist/routes.cjs\"\n },\n \"./testing\": {\n \"types\": \"./dist/testing.d.ts\",\n \"import\": \"./dist/testing.mjs\",\n \"require\": \"./dist/testing.cjs\"\n },\n \"./agent-runtime\": {\n \"types\": \"./dist/agent-runtime.d.ts\",\n \"import\": \"./dist/agent-runtime.mjs\",\n \"require\": \"./dist/agent-runtime.cjs\"\n },\n \"./image\": {\n \"types\": \"./types/image.d.ts\",\n \"import\": \"./dist/image.mjs\",\n \"require\": \"./dist/image.cjs\"\n },\n \"./image/server\": {\n \"types\": \"./dist/image/server.d.ts\",\n \"import\": \"./dist/image/server.mjs\",\n \"require\": \"./dist/image/server.cjs\"\n },\n \"./image/sharp\": {\n \"types\": \"./dist/image/sharp.d.ts\",\n \"import\": \"./dist/image/sharp.mjs\",\n \"require\": \"./dist/image/sharp.cjs\"\n },\n \"./i18n\": {\n \"types\": \"./dist/i18n/index.d.ts\",\n \"import\": \"./dist/i18n/index.mjs\",\n \"require\": \"./dist/i18n/index.cjs\"\n },\n \"./i18n/server\": {\n \"types\": \"./dist/i18n/server.d.ts\",\n \"import\": \"./dist/i18n/server.mjs\",\n \"require\": \"./dist/i18n/server.cjs\"\n },\n \"./i18n/client\": {\n \"types\": \"./dist/i18n/client.d.ts\",\n \"import\": \"./dist/i18n/client.mjs\",\n \"require\": \"./dist/i18n/client.cjs\"\n },\n \"./internal/production-runtime\": {\n \"types\": \"./dist/internal/production-runtime.d.ts\",\n \"import\": \"./dist/internal/production-runtime.mjs\",\n \"require\": \"./dist/internal/production-runtime.cjs\"\n },\n \"./internal/metadata-image-runtime\": {\n \"types\": \"./dist/internal/metadata-image-runtime.d.ts\",\n \"import\": \"./dist/internal/metadata-image-runtime.mjs\",\n \"require\": \"./dist/internal/metadata-image-runtime.cjs\"\n },\n \"./internal/client-runtime\": {\n \"types\": \"./dist/internal/client-runtime.d.ts\",\n \"import\": \"./dist/internal/client-runtime.mjs\",\n \"require\": \"./dist/internal/client-runtime.cjs\"\n },\n \"./internal/build-runtime\": {\n \"types\": \"./dist/internal/build-runtime.d.ts\",\n \"import\": \"./dist/internal/build-runtime.mjs\",\n \"require\": \"./dist/internal/build-runtime.cjs\"\n },\n \"./internal/config-runtime\": {\n \"types\": \"./dist/internal/config-runtime.d.ts\",\n \"import\": \"./dist/internal/config-runtime.mjs\",\n \"require\": \"./dist/internal/config-runtime.cjs\"\n },\n \"./internal/production-node-env\": {\n \"types\": \"./dist/internal/production-node-env.d.ts\",\n \"import\": \"./dist/internal/production-node-env.mjs\",\n \"require\": \"./dist/internal/production-node-env.cjs\"\n }\n },\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"scripts\": {\n \"build\": \"tsup\",\n \"build:runtime\": \"tsup --config tsup.runtime.config.ts\",\n \"dev\": \"tsup --watch\",\n \"test\": \"vitest run\",\n \"test:coverage\": \"vitest --coverage\",\n \"lint\": \"biome lint .\",\n \"lint:fix\": \"biome lint --write .\",\n \"format\": \"biome format --write .\",\n \"type-check\": \"tsc --noEmit\",\n \"clean\": \"rm -rf dist\"\n },\n \"dependencies\": {\n \"@farming-labs/docs\": \"^0.2.44\",\n \"@farming-labs/orm\": \"0.0.62\",\n \"@farming-labs/orm-runtime\": \"0.0.62\",\n \"@formatjs/icu-messageformat-parser\": \"3.5.15\",\n \"@mdx-js/mdx\": \"^3.1.1\",\n \"@scalar/api-reference\": \"^1.38.1\",\n \"@scalar/openapi-parser\": \"^0.22.3\",\n \"@tailwindcss/vite\": \"4.1.18\",\n \"@vercel/og\": \"0.11.1\",\n \"@vitejs/plugin-react\": \"^4.2.1\",\n \"better-call\": \"^1.0.19\",\n \"db0\": \"^0.3.4\",\n \"esbuild\": \"^0.28.0\",\n \"fast-glob\": \"^3.3.2\",\n \"h3\": \"2.0.1-rc.5\",\n \"image-size\": \"^2.0.2\",\n \"intl-messageformat\": \"11.2.12\",\n \"marked\": \"^12.0.2\",\n \"nitro\": \"3.0.1-alpha.0\",\n \"pg\": \"^8.20.0\",\n \"picocolors\": \"^1.0.0\",\n \"remark-gfm\": \"^4.0.1\",\n \"sirv\": \"^2.0.4\",\n \"sugar-high\": \"^0.9.5\",\n \"supports-color\": \"^10.2.2\",\n \"tailwindcss\": \"4.1.18\",\n \"unstorage\": \"^2.0.0-alpha.3\",\n \"vite\": \"^5.0.10\",\n \"zod\": \"^4.1.12\"\n },\n \"devDependencies\": {\n \"@clerk/react\": \"^6.1.0\",\n \"@types/react\": \"^18.2.45\",\n \"@types/react-dom\": \"^18.2.18\",\n \"@vitest/coverage-v8\": \"^1.1.0\",\n \"jsdom\": \"^25.0.0\",\n \"react\": \"19.2.8\",\n \"react-dom\": \"19.2.8\",\n \"tsup\": \"^8.3.5\",\n \"typescript\": \"^5.3.3\",\n \"vitest\": \"^1.1.0\"\n },\n \"peerDependencies\": {\n \"react\": \"^18.2.0 || ^19.0.0\",\n \"react-dom\": \"^18.2.0 || ^19.0.0\"\n },\n \"optionalDependencies\": {\n \"rolldown\": \"1.2.0\",\n \"sharp\": \"^0.34.5\",\n \"vite-rolldown\": \"npm:vite@8.1.5\"\n }\n}\n","import { version } from \"../package.json\";\n\nexport const FARM_VERSION = version;\n"],"mappings":";AAEE,cAAW;;;ACAN,IAAM,eAAe;","names":[]}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import {
|
|
2
|
+
getFarmThemeServerSnapshot
|
|
3
|
+
} from "./chunk-GQVQESLY.mjs";
|
|
4
|
+
import {
|
|
5
|
+
__name
|
|
6
|
+
} from "./chunk-CGILA3WO.mjs";
|
|
7
|
+
|
|
8
|
+
// src/theme/client.tsx
|
|
9
|
+
import { useSyncExternalStore } from "react";
|
|
10
|
+
var FALLBACK_CLIENT_SNAPSHOT = Object.freeze({
|
|
11
|
+
theme: "system",
|
|
12
|
+
resolvedTheme: "light",
|
|
13
|
+
mounted: true
|
|
14
|
+
});
|
|
15
|
+
var cachedClientSnapshot = FALLBACK_CLIENT_SNAPSHOT;
|
|
16
|
+
function snapshotsMatch(left, right) {
|
|
17
|
+
return left.theme === right.theme && left.resolvedTheme === right.resolvedTheme && left.mounted === right.mounted;
|
|
18
|
+
}
|
|
19
|
+
__name(snapshotsMatch, "snapshotsMatch");
|
|
20
|
+
function getClientSnapshot() {
|
|
21
|
+
const next = typeof window === "undefined" ? FALLBACK_CLIENT_SNAPSHOT : window.__FARM_THEME__?.snapshot;
|
|
22
|
+
if (!next) return cachedClientSnapshot;
|
|
23
|
+
if (!snapshotsMatch(cachedClientSnapshot, next)) cachedClientSnapshot = next;
|
|
24
|
+
return cachedClientSnapshot;
|
|
25
|
+
}
|
|
26
|
+
__name(getClientSnapshot, "getClientSnapshot");
|
|
27
|
+
function getHydrationSnapshot() {
|
|
28
|
+
if (typeof window !== "undefined" && window.__FARM_THEME__?.serverSnapshot) {
|
|
29
|
+
return window.__FARM_THEME__.serverSnapshot;
|
|
30
|
+
}
|
|
31
|
+
return getFarmThemeServerSnapshot();
|
|
32
|
+
}
|
|
33
|
+
__name(getHydrationSnapshot, "getHydrationSnapshot");
|
|
34
|
+
function subscribe(listener) {
|
|
35
|
+
if (typeof window === "undefined") return () => {
|
|
36
|
+
};
|
|
37
|
+
const handleThemeChange = /* @__PURE__ */ __name(() => {
|
|
38
|
+
getClientSnapshot();
|
|
39
|
+
listener();
|
|
40
|
+
}, "handleThemeChange");
|
|
41
|
+
window.addEventListener("farm:themechange", handleThemeChange);
|
|
42
|
+
return () => window.removeEventListener("farm:themechange", handleThemeChange);
|
|
43
|
+
}
|
|
44
|
+
__name(subscribe, "subscribe");
|
|
45
|
+
function getTheme() {
|
|
46
|
+
return getClientSnapshot();
|
|
47
|
+
}
|
|
48
|
+
__name(getTheme, "getTheme");
|
|
49
|
+
function setTheme(theme) {
|
|
50
|
+
const runtime = typeof window === "undefined" ? void 0 : window.__FARM_THEME__;
|
|
51
|
+
if (!runtime) {
|
|
52
|
+
throw new Error("The FARMJS theme runtime is not enabled. Add `theme` to farm.config.ts.");
|
|
53
|
+
}
|
|
54
|
+
runtime.setTheme(theme);
|
|
55
|
+
}
|
|
56
|
+
__name(setTheme, "setTheme");
|
|
57
|
+
function toggleTheme() {
|
|
58
|
+
const next = getClientSnapshot().resolvedTheme === "dark" ? "light" : "dark";
|
|
59
|
+
setTheme(next);
|
|
60
|
+
return next;
|
|
61
|
+
}
|
|
62
|
+
__name(toggleTheme, "toggleTheme");
|
|
63
|
+
function useTheme() {
|
|
64
|
+
const snapshot = useSyncExternalStore(subscribe, getClientSnapshot, getHydrationSnapshot);
|
|
65
|
+
return {
|
|
66
|
+
...snapshot,
|
|
67
|
+
setTheme,
|
|
68
|
+
toggleTheme
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
__name(useTheme, "useTheme");
|
|
72
|
+
|
|
73
|
+
export {
|
|
74
|
+
getTheme,
|
|
75
|
+
setTheme,
|
|
76
|
+
toggleTheme,
|
|
77
|
+
useTheme
|
|
78
|
+
};
|
|
79
|
+
//# sourceMappingURL=chunk-D42BNPZH.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/theme/client.tsx"],"sourcesContent":["\"use client\";\n\nimport { useSyncExternalStore } from \"react\";\nimport { getFarmThemeServerSnapshot } from \"./bridge\";\nimport type {\n FarmThemePreference,\n FarmThemeRuntime,\n FarmThemeSnapshot,\n FarmResolvedTheme,\n} from \"./types\";\n\ndeclare global {\n interface Window {\n __FARM_THEME__?: FarmThemeRuntime;\n }\n}\n\nconst FALLBACK_CLIENT_SNAPSHOT: FarmThemeSnapshot = Object.freeze({\n theme: \"system\",\n resolvedTheme: \"light\",\n mounted: true,\n});\n\nlet cachedClientSnapshot = FALLBACK_CLIENT_SNAPSHOT;\n\nfunction snapshotsMatch(left: FarmThemeSnapshot, right: FarmThemeSnapshot): boolean {\n return (\n left.theme === right.theme &&\n left.resolvedTheme === right.resolvedTheme &&\n left.mounted === right.mounted\n );\n}\n\nfunction getClientSnapshot(): FarmThemeSnapshot {\n const next =\n typeof window === \"undefined\" ? FALLBACK_CLIENT_SNAPSHOT : window.__FARM_THEME__?.snapshot;\n if (!next) return cachedClientSnapshot;\n if (!snapshotsMatch(cachedClientSnapshot, next)) cachedClientSnapshot = next;\n return cachedClientSnapshot;\n}\n\nfunction getHydrationSnapshot(): FarmThemeSnapshot {\n if (typeof window !== \"undefined\" && window.__FARM_THEME__?.serverSnapshot) {\n return window.__FARM_THEME__.serverSnapshot;\n }\n return getFarmThemeServerSnapshot();\n}\n\nfunction subscribe(listener: () => void): () => void {\n if (typeof window === \"undefined\") return () => {};\n const handleThemeChange = () => {\n getClientSnapshot();\n listener();\n };\n window.addEventListener(\"farm:themechange\", handleThemeChange);\n return () => window.removeEventListener(\"farm:themechange\", handleThemeChange);\n}\n\nexport function getTheme(): FarmThemeSnapshot {\n return getClientSnapshot();\n}\n\nexport function setTheme(theme: FarmThemePreference): void {\n const runtime = typeof window === \"undefined\" ? undefined : window.__FARM_THEME__;\n if (!runtime) {\n throw new Error(\"The FARMJS theme runtime is not enabled. Add `theme` to farm.config.ts.\");\n }\n runtime.setTheme(theme);\n}\n\nexport function toggleTheme(): FarmResolvedTheme {\n const next = getClientSnapshot().resolvedTheme === \"dark\" ? \"light\" : \"dark\";\n setTheme(next);\n return next;\n}\n\nexport interface UseThemeResult extends FarmThemeSnapshot {\n setTheme(theme: FarmThemePreference): void;\n toggleTheme(): FarmResolvedTheme;\n}\n\nexport function useTheme(): UseThemeResult {\n const snapshot = useSyncExternalStore(subscribe, getClientSnapshot, getHydrationSnapshot);\n return {\n ...snapshot,\n setTheme,\n toggleTheme,\n };\n}\n"],"mappings":";;;;;;;;AAEA,SAAS,4BAA4B;AAerC,IAAM,2BAA8C,OAAO,OAAO;AAAA,EAChE,OAAO;AAAA,EACP,eAAe;AAAA,EACf,SAAS;AACX,CAAC;AAED,IAAI,uBAAuB;AAE3B,SAAS,eAAe,MAAyB,OAAmC;AAClF,SACE,KAAK,UAAU,MAAM,SACrB,KAAK,kBAAkB,MAAM,iBAC7B,KAAK,YAAY,MAAM;AAE3B;AANS;AAQT,SAAS,oBAAuC;AAC9C,QAAM,OACJ,OAAO,WAAW,cAAc,2BAA2B,OAAO,gBAAgB;AACpF,MAAI,CAAC,KAAM,QAAO;AAClB,MAAI,CAAC,eAAe,sBAAsB,IAAI,EAAG,wBAAuB;AACxE,SAAO;AACT;AANS;AAQT,SAAS,uBAA0C;AACjD,MAAI,OAAO,WAAW,eAAe,OAAO,gBAAgB,gBAAgB;AAC1E,WAAO,OAAO,eAAe;AAAA,EAC/B;AACA,SAAO,2BAA2B;AACpC;AALS;AAOT,SAAS,UAAU,UAAkC;AACnD,MAAI,OAAO,WAAW,YAAa,QAAO,MAAM;AAAA,EAAC;AACjD,QAAM,oBAAoB,6BAAM;AAC9B,sBAAkB;AAClB,aAAS;AAAA,EACX,GAH0B;AAI1B,SAAO,iBAAiB,oBAAoB,iBAAiB;AAC7D,SAAO,MAAM,OAAO,oBAAoB,oBAAoB,iBAAiB;AAC/E;AARS;AAUF,SAAS,WAA8B;AAC5C,SAAO,kBAAkB;AAC3B;AAFgB;AAIT,SAAS,SAAS,OAAkC;AACzD,QAAM,UAAU,OAAO,WAAW,cAAc,SAAY,OAAO;AACnE,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,yEAAyE;AAAA,EAC3F;AACA,UAAQ,SAAS,KAAK;AACxB;AANgB;AAQT,SAAS,cAAiC;AAC/C,QAAM,OAAO,kBAAkB,EAAE,kBAAkB,SAAS,UAAU;AACtE,WAAS,IAAI;AACb,SAAO;AACT;AAJgB;AAWT,SAAS,WAA2B;AACzC,QAAM,WAAW,qBAAqB,WAAW,mBAAmB,oBAAoB;AACxF,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,IACA;AAAA,EACF;AACF;AAPgB;","names":[]}
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "./chunk-V7RBCSDJ.mjs";
|
|
5
5
|
import {
|
|
6
6
|
resolveDocsConfig
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-YD5IRKVS.mjs";
|
|
8
8
|
import {
|
|
9
9
|
resolveFarmDocsFontAssets,
|
|
10
10
|
toFarmDocsPublicFontAssets
|
|
@@ -4002,4 +4002,4 @@ export {
|
|
|
4002
4002
|
createDocsAPI,
|
|
4003
4003
|
createFarmDocsAPIHandler
|
|
4004
4004
|
};
|
|
4005
|
-
//# sourceMappingURL=chunk-
|
|
4005
|
+
//# sourceMappingURL=chunk-DVPRBMU2.mjs.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
withProductionNodeEnv
|
|
3
|
-
} from "./chunk-4S3ORGFA.mjs";
|
|
4
1
|
import {
|
|
5
2
|
canUseRolldownForRouteDiscovery,
|
|
6
3
|
loadFarmProductionVite
|
|
7
4
|
} from "./chunk-SL6HTIOK.mjs";
|
|
5
|
+
import {
|
|
6
|
+
withProductionNodeEnv
|
|
7
|
+
} from "./chunk-4S3ORGFA.mjs";
|
|
8
8
|
import {
|
|
9
9
|
FARM_DOCS_LAST_MODIFIED_MANIFEST,
|
|
10
10
|
createFarmDocsLastModifiedManifest,
|
|
11
11
|
getFarmDocsRouteTypeEntries
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-DVPRBMU2.mjs";
|
|
13
13
|
import {
|
|
14
14
|
generateFarmDocsSearchClientRuntime,
|
|
15
15
|
isFarmDocsSearchEnabled,
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
import {
|
|
19
19
|
hasCustomFarmRouteContext,
|
|
20
20
|
resolveDeployOutputPath
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-YD5IRKVS.mjs";
|
|
22
22
|
import {
|
|
23
23
|
PluginManager
|
|
24
24
|
} from "./chunk-A53LP5QG.mjs";
|
|
@@ -26,6 +26,7 @@ import {
|
|
|
26
26
|
DEFAULT_NOT_FOUND_STYLES,
|
|
27
27
|
createFarmApp,
|
|
28
28
|
createFarmSourceAlias,
|
|
29
|
+
createFarmThemeCssPlugin,
|
|
29
30
|
farmFontImportsPlugin,
|
|
30
31
|
generateFarmClientPluginEntryCode,
|
|
31
32
|
generateFarmTypeArtifacts,
|
|
@@ -33,7 +34,7 @@ import {
|
|
|
33
34
|
mergeFarmFontCss,
|
|
34
35
|
mergeFarmViteConfig,
|
|
35
36
|
resolveRouteRenderingConfigFromFile
|
|
36
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-TX54PXAJ.mjs";
|
|
37
38
|
import {
|
|
38
39
|
farmEnvironmentFunctionsPlugin
|
|
39
40
|
} from "./chunk-V6WE6JSZ.mjs";
|
|
@@ -47,9 +48,6 @@ import {
|
|
|
47
48
|
import {
|
|
48
49
|
getFarmAppDirectories
|
|
49
50
|
} from "./chunk-74YTBPTY.mjs";
|
|
50
|
-
import {
|
|
51
|
-
isFarmMarkdownPageFile
|
|
52
|
-
} from "./chunk-ZVWA4ZQ3.mjs";
|
|
53
51
|
import {
|
|
54
52
|
applyFarmWorkflowVercelCrons,
|
|
55
53
|
prepareFarmWorkflowsForNitro
|
|
@@ -60,6 +58,9 @@ import {
|
|
|
60
58
|
mergeScheduledTasks,
|
|
61
59
|
prepareFarmCronForNitro
|
|
62
60
|
} from "./chunk-GXASWWJU.mjs";
|
|
61
|
+
import {
|
|
62
|
+
isFarmMarkdownPageFile
|
|
63
|
+
} from "./chunk-ZVWA4ZQ3.mjs";
|
|
63
64
|
import {
|
|
64
65
|
getFarmIntegrationPluginServerRuntime
|
|
65
66
|
} from "./chunk-CRN3AH35.mjs";
|
|
@@ -1410,6 +1411,7 @@ async function buildClient(productionVite, config, root, srcDir, outputDir, page
|
|
|
1410
1411
|
}
|
|
1411
1412
|
},
|
|
1412
1413
|
plugins: [
|
|
1414
|
+
createFarmThemeCssPlugin(config.theme, config.basePath),
|
|
1413
1415
|
...tailwindVitePlugin ? [tailwindVitePlugin] : [],
|
|
1414
1416
|
// Plugin to redirect @farm.js/core imports to client-only exports
|
|
1415
1417
|
{
|
|
@@ -3028,6 +3030,7 @@ async function buildSSRInMemory(productionVite, config, root, routeManager, apiR
|
|
|
3028
3030
|
__FARM_PUBLIC_ENV__: JSON.stringify(config.env?.public || {})
|
|
3029
3031
|
},
|
|
3030
3032
|
plugins: [
|
|
3033
|
+
createFarmThemeCssPlugin(config.theme, config.basePath),
|
|
3031
3034
|
...tailwindVitePlugin ? [tailwindVitePlugin] : [],
|
|
3032
3035
|
...!useExternalMetadataImageRuntime && metadataImageRoutes.some((image) => image.sourceType === "module") ? [createMetadataImageWasmPlugin()] : [],
|
|
3033
3036
|
{
|
|
@@ -3241,15 +3244,19 @@ function generateVirtualEntryCode(apiRoutes, pageRoutes, layoutRoutes, routeSlot
|
|
|
3241
3244
|
_runWithCurrentRequest,
|
|
3242
3245
|
_runWithMiddlewareContext,
|
|
3243
3246
|
_runWithMiddlewareData,
|
|
3247
|
+
_setDefaultFarmThemeConfig,
|
|
3244
3248
|
addMetadataImageReference,
|
|
3249
|
+
applyFarmThemeDocument,
|
|
3245
3250
|
appendFarmLinkHeader,
|
|
3246
3251
|
applyProductionMiddlewareHeaders,
|
|
3247
3252
|
configureFarmCache,
|
|
3248
3253
|
configureFarmObservability,
|
|
3249
3254
|
createFarmCacheKey,
|
|
3255
|
+
createFarmThemeDocumentParts,
|
|
3250
3256
|
createFarmLocaleCookie,
|
|
3251
3257
|
createFarmProductionLifecycle,
|
|
3252
3258
|
createProductionMiddlewareRunner,
|
|
3259
|
+
getTheme as getFarmTheme,
|
|
3253
3260
|
emitFarmEvent,
|
|
3254
3261
|
getFarmDataCache,
|
|
3255
3262
|
getFarmLocaleVaryHeaders,
|
|
@@ -3444,6 +3451,8 @@ configureFarmObservability(farmObservabilityConfig);
|
|
|
3444
3451
|
configureFarmCache(farmResolvedRuntimeConfig.cache);
|
|
3445
3452
|
const farmI18nConfig = ${JSON.stringify(config.i18n)};
|
|
3446
3453
|
const farmServerConfig = ${JSON.stringify(config.server)};
|
|
3454
|
+
const farmThemeConfig = ${JSON.stringify(config.theme)};
|
|
3455
|
+
_setDefaultFarmThemeConfig(farmThemeConfig);
|
|
3447
3456
|
export const farmProductionLifecycle = createFarmProductionLifecycle({
|
|
3448
3457
|
server: farmServerConfig,
|
|
3449
3458
|
start: () => farmPluginRuntime?.startRuntime(),
|
|
@@ -5280,7 +5289,13 @@ async function handleFarmRequestInContext(
|
|
|
5280
5289
|
!farmI18nSnapshot &&
|
|
5281
5290
|
!pprCacheKey
|
|
5282
5291
|
) {
|
|
5292
|
+
const farmThemeDocument = createFarmThemeDocumentParts(
|
|
5293
|
+
farmThemeConfig,
|
|
5294
|
+
farmResolvedRuntimeConfig.basePath,
|
|
5295
|
+
getFarmTheme(request)
|
|
5296
|
+
);
|
|
5283
5297
|
const streamPrefix = '<!DOCTYPE html>\\n<html lang="en">\\n<head>\\n' +
|
|
5298
|
+
farmThemeDocument.head + '\\n' +
|
|
5284
5299
|
' <meta charset="utf-8">\\n' +
|
|
5285
5300
|
' <meta name="viewport" content="width=device-width, initial-scale=1">\\n' +
|
|
5286
5301
|
(hasFavicon ? '' : ' <link rel="icon" href="data:,">\\n') +
|
|
@@ -5296,9 +5311,13 @@ async function handleFarmRequestInContext(
|
|
|
5296
5311
|
) + '\\n' +
|
|
5297
5312
|
' <script type="module" src="/farm-client.js"></script>\\n' +
|
|
5298
5313
|
'</body>\\n</html>';
|
|
5314
|
+
const themedStreamPrefix = streamPrefix.replace(
|
|
5315
|
+
'<html lang="en">',
|
|
5316
|
+
'<html lang="en"' + farmThemeDocument.attributes + '>'
|
|
5317
|
+
);
|
|
5299
5318
|
const streamedDocument = createFarmDocumentStream(
|
|
5300
5319
|
renderedPage.stream,
|
|
5301
|
-
|
|
5320
|
+
themedStreamPrefix,
|
|
5302
5321
|
streamSuffix,
|
|
5303
5322
|
function() {
|
|
5304
5323
|
if (pprBypassReason === "refresh") {
|
|
@@ -5381,6 +5400,12 @@ async function handleFarmRequestInContext(
|
|
|
5381
5400
|
</html>\`;
|
|
5382
5401
|
}
|
|
5383
5402
|
fullHtml = applyFarmI18nDocument(fullHtml, pathname, farmI18nSnapshot);
|
|
5403
|
+
fullHtml = applyFarmThemeDocument(
|
|
5404
|
+
fullHtml,
|
|
5405
|
+
farmThemeConfig,
|
|
5406
|
+
farmResolvedRuntimeConfig.basePath,
|
|
5407
|
+
getFarmTheme(request)
|
|
5408
|
+
);
|
|
5384
5409
|
|
|
5385
5410
|
if (pageStatus === 200 && pprCacheKey && request.method.toUpperCase() !== "HEAD") {
|
|
5386
5411
|
await pprShellCache.setAsync(
|
|
@@ -5507,10 +5532,15 @@ async function handleFarmRequestInContext(
|
|
|
5507
5532
|
const errorHtml = ${hasMiddlewareRuntime ? `await _runWithMiddlewareData(middlewareData, () =>
|
|
5508
5533
|
_runWithMiddlewareContext(middlewareContext, renderErrorElement)
|
|
5509
5534
|
)` : "await renderErrorElement()"};
|
|
5510
|
-
const errorDocument =
|
|
5511
|
-
|
|
5512
|
-
|
|
5513
|
-
|
|
5535
|
+
const errorDocument = applyFarmThemeDocument(
|
|
5536
|
+
applyFarmI18nDocument(
|
|
5537
|
+
createFarmErrorDocument(errorHtml, "Application Error"),
|
|
5538
|
+
pathname,
|
|
5539
|
+
getFarmI18nSnapshot()
|
|
5540
|
+
),
|
|
5541
|
+
farmThemeConfig,
|
|
5542
|
+
farmResolvedRuntimeConfig.basePath,
|
|
5543
|
+
getFarmTheme(request)
|
|
5514
5544
|
);
|
|
5515
5545
|
emitFarmEvent({
|
|
5516
5546
|
type: "render.complete",
|
|
@@ -5535,10 +5565,15 @@ async function handleFarmRequestInContext(
|
|
|
5535
5565
|
const errorMessage = "Internal Server Error";
|
|
5536
5566
|
const fallbackHtml = '<main><h1>Application Error</h1><p>' +
|
|
5537
5567
|
escapeFarmHtmlAttribute(errorMessage) + '</p></main>';
|
|
5538
|
-
const fallbackDocument =
|
|
5539
|
-
|
|
5540
|
-
|
|
5541
|
-
|
|
5568
|
+
const fallbackDocument = applyFarmThemeDocument(
|
|
5569
|
+
applyFarmI18nDocument(
|
|
5570
|
+
createFarmErrorDocument(fallbackHtml, "Application Error"),
|
|
5571
|
+
pathname,
|
|
5572
|
+
getFarmI18nSnapshot()
|
|
5573
|
+
),
|
|
5574
|
+
farmThemeConfig,
|
|
5575
|
+
farmResolvedRuntimeConfig.basePath,
|
|
5576
|
+
getFarmTheme(request)
|
|
5542
5577
|
);
|
|
5543
5578
|
return applyProductionMiddlewareHeaders(new Response(
|
|
5544
5579
|
fallbackDocument,
|
|
@@ -5636,6 +5671,12 @@ async function handleFarmRequestInContext(
|
|
|
5636
5671
|
</html>\`;
|
|
5637
5672
|
}
|
|
5638
5673
|
fullHtml = applyFarmI18nDocument(fullHtml, pathname, getFarmI18nSnapshot());
|
|
5674
|
+
fullHtml = applyFarmThemeDocument(
|
|
5675
|
+
fullHtml,
|
|
5676
|
+
farmThemeConfig,
|
|
5677
|
+
farmResolvedRuntimeConfig.basePath,
|
|
5678
|
+
getFarmTheme(request)
|
|
5679
|
+
);
|
|
5639
5680
|
|
|
5640
5681
|
emitFarmEvent({
|
|
5641
5682
|
type: "render.complete",
|
|
@@ -5654,8 +5695,14 @@ async function handleFarmRequestInContext(
|
|
|
5654
5695
|
}), middlewareHeaders);
|
|
5655
5696
|
} catch (error) {
|
|
5656
5697
|
console.error("404 render error:", error);
|
|
5657
|
-
|
|
5698
|
+
const fallbackDocument = applyFarmThemeDocument(
|
|
5658
5699
|
\`<!DOCTYPE html><html><head><title>404</title></head><body><h1>404 - Page Not Found</h1><p>The page \${pathname} doesn't exist.</p><a href="/">Go Home</a></body></html>\`,
|
|
5700
|
+
farmThemeConfig,
|
|
5701
|
+
farmResolvedRuntimeConfig.basePath,
|
|
5702
|
+
getFarmTheme(request)
|
|
5703
|
+
);
|
|
5704
|
+
return applyProductionMiddlewareHeaders(new Response(
|
|
5705
|
+
fallbackDocument,
|
|
5659
5706
|
{
|
|
5660
5707
|
status: 404,
|
|
5661
5708
|
headers: { "Content-Type": "text/html", "x-farm-preload-buffered": "1" },
|
|
@@ -6992,4 +7039,4 @@ __name(buildNitro, "buildNitro");
|
|
|
6992
7039
|
export {
|
|
6993
7040
|
build
|
|
6994
7041
|
};
|
|
6995
|
-
//# sourceMappingURL=chunk-
|
|
7042
|
+
//# sourceMappingURL=chunk-FJGTYLCO.mjs.map
|